<?php

/**
 * Created by Sven.
 * Date: 2016/12/25
 * Time: 19:54
 * 字段验证类
 */
class Validate {

    // 检查字段是否为空
    public static function checkNull($_data){
        $_data = trim($_data);
        return !isset($_data) || empty($_data);
    }

    // 检查字段的最小长度是否合法
    public static function checkMinLengh($_data, $_min_length){
        return empty($_data)  ||  mb_strlen(trim($_data), 'utf-8') < $_min_length;
    }

    // 检查字段的最大长度是否合法
    public static function checkMaxLengh($_data, $_max_length){
        return  empty($_data) ||  mb_strlen(trim($_data), 'utf-8') > $_max_length;
    }

    // 检查字段的长度是否等于指定的值
    public static function checkEqualsLengh($_data, $_equals_length){
        $_length = mb_strlen(trim($_data), 'utf-8');
        return $_length != $_equals_length;
    }

    // 检查两个字段是否相等
    public static function checkEquals($_data1, $_data2, $_ignore = true){
        if ($_ignore){
            return strtolower(trim($_data1)) != strtolower(trim($_data2));
        } else {
            return trim($_data1) != trim($_data2);
        }

    }

    // 检查是否是合法的正整数
    public static function  checkPositiveInteger($_data, $_is_with_zero = false){
        if ($_is_with_zero){
            return !(is_numeric($_data) && intval($_data) >= 0);
        } else {
            return !(is_numeric($_data) && intval($_data) > 0);
        }

    }

    // 检查是否是数值
    public static function checkNumber($_data){
        return !is_numeric($_data);
    }

    // 检查是否已经登录
    public static function checkIsLoginSession(){
        if (!isset($_SESSION)){
            @session_start();
        }
        if (!isset($_SESSION['admin']) && empty($_SESSION['admin'])){
            Tool::alertLocSecurity('login.php');
        }
    }

}